// $ANTLR 3.4 C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g 2012-10-31 15:49:04

package PL.prac7;


import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings({"all", "warnings", "unchecked"})
public class YACCLexer extends Lexer {
    public static final int EOF=-1;
    public static final int ACORCHETE=4;
    public static final int ALLAVE=5;
    public static final int ALMOHADILLA=6;
    public static final int AND=7;
    public static final int APARENTESIS=8;
    public static final int ASTERISCO=9;
    public static final int BARRA=10;
    public static final int BLANCO=11;
    public static final int BREAK=12;
    public static final int CADENA=13;
    public static final int CARACTER=14;
    public static final int CCORCHETE=15;
    public static final int CHAR=16;
    public static final int CLLAVE=17;
    public static final int COMA=18;
    public static final int COMENTARIO=19;
    public static final int COMILLA=20;
    public static final int COMILLAS=21;
    public static final int CPARENTESIS=22;
    public static final int DEFINE=23;
    public static final int DIGITO=24;
    public static final int DOLAR=25;
    public static final int DOLARDOLAR=26;
    public static final int DOSPUNTOS=27;
    public static final int DOUBLE=28;
    public static final int ELSE=29;
    public static final int ESPACIO=30;
    public static final int EXTERN=31;
    public static final int FINDEFINICIONES=32;
    public static final int FLOAT=33;
    public static final int FOR=34;
    public static final int IDENT=35;
    public static final int IF=36;
    public static final int IGUAL=37;
    public static final int INCLUDE=38;
    public static final int INIDEFINICIONES=39;
    public static final int INT=40;
    public static final int INTERROGANTE=41;
    public static final int LETRA=42;
    public static final int MAIN=43;
    public static final int MAS=44;
    public static final int MAYOR=45;
    public static final int MENOR=46;
    public static final int MENOS=47;
    public static final int NOT=48;
    public static final int NUEVA_LINEA=49;
    public static final int NUMERO=50;
    public static final int OR=51;
    public static final int ORYACC=52;
    public static final int PORCENTAJE=53;
    public static final int PUNTO=54;
    public static final int RETURN=55;
    public static final int SEPARADOR=56;
    public static final int STRUCT=57;
    public static final int TIPO=58;
    public static final int TYPEDEF=59;
    public static final int VAR=60;
    public static final int VOID=61;
    public static final int WHILE=62;
    public static final int ZONAREGLA=63;

    // delegates
    // delegators
    public Lexer[] getDelegates() {
        return new Lexer[] {};
    }

    public YACCLexer() {} 
    public YACCLexer(CharStream input) {
        this(input, new RecognizerSharedState());
    }
    public YACCLexer(CharStream input, RecognizerSharedState state) {
        super(input,state);
    }
    public String getGrammarFileName() { return "C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g"; }

    // $ANTLR start "WHILE"
    public final void mWHILE() throws RecognitionException {
        try {
            int _type = WHILE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:15:6: ( 'while' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:15:8: 'while'
            {
            match("while"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "WHILE"

    // $ANTLR start "IF"
    public final void mIF() throws RecognitionException {
        try {
            int _type = IF;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:16:3: ( 'if' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:16:5: 'if'
            {
            match("if"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "IF"

    // $ANTLR start "ELSE"
    public final void mELSE() throws RecognitionException {
        try {
            int _type = ELSE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:17:5: ( 'else' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:17:7: 'else'
            {
            match("else"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ELSE"

    // $ANTLR start "VOID"
    public final void mVOID() throws RecognitionException {
        try {
            int _type = VOID;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:18:5: ( 'void' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:18:7: 'void'
            {
            match("void"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "VOID"

    // $ANTLR start "BREAK"
    public final void mBREAK() throws RecognitionException {
        try {
            int _type = BREAK;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:19:6: ( 'break' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:19:8: 'break'
            {
            match("break"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "BREAK"

    // $ANTLR start "FOR"
    public final void mFOR() throws RecognitionException {
        try {
            int _type = FOR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:20:4: ( 'for' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:20:6: 'for'
            {
            match("for"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "FOR"

    // $ANTLR start "MAIN"
    public final void mMAIN() throws RecognitionException {
        try {
            int _type = MAIN;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:21:5: ( 'main' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:21:7: 'main'
            {
            match("main"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MAIN"

    // $ANTLR start "DEFINE"
    public final void mDEFINE() throws RecognitionException {
        try {
            int _type = DEFINE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:22:7: ( 'define' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:22:9: 'define'
            {
            match("define"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DEFINE"

    // $ANTLR start "INCLUDE"
    public final void mINCLUDE() throws RecognitionException {
        try {
            int _type = INCLUDE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:23:8: ( 'include' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:23:10: 'include'
            {
            match("include"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "INCLUDE"

    // $ANTLR start "EXTERN"
    public final void mEXTERN() throws RecognitionException {
        try {
            int _type = EXTERN;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:24:7: ( 'extern' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:24:9: 'extern'
            {
            match("extern"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "EXTERN"

    // $ANTLR start "TYPEDEF"
    public final void mTYPEDEF() throws RecognitionException {
        try {
            int _type = TYPEDEF;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:25:8: ( 'typedef' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:25:10: 'typedef'
            {
            match("typedef"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "TYPEDEF"

    // $ANTLR start "STRUCT"
    public final void mSTRUCT() throws RecognitionException {
        try {
            int _type = STRUCT;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:26:7: ( 'struct' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:26:9: 'struct'
            {
            match("struct"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "STRUCT"

    // $ANTLR start "RETURN"
    public final void mRETURN() throws RecognitionException {
        try {
            int _type = RETURN;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:27:7: ( 'return' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:27:9: 'return'
            {
            match("return"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "RETURN"

    // $ANTLR start "INT"
    public final void mINT() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:28:13: ( 'int' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:28:15: 'int'
            {
            match("int"); 



            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "INT"

    // $ANTLR start "CHAR"
    public final void mCHAR() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:29:14: ( 'char' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:29:16: 'char'
            {
            match("char"); 



            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CHAR"

    // $ANTLR start "FLOAT"
    public final void mFLOAT() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:30:15: ( 'float' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:30:17: 'float'
            {
            match("float"); 



            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "FLOAT"

    // $ANTLR start "DOUBLE"
    public final void mDOUBLE() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:31:16: ( 'double' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:31:18: 'double'
            {
            match("double"); 



            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DOUBLE"

    // $ANTLR start "TIPO"
    public final void mTIPO() throws RecognitionException {
        try {
            int _type = TIPO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:32:5: ( ( INT | CHAR | FLOAT | DOUBLE ) )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:32:7: ( INT | CHAR | FLOAT | DOUBLE )
            {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:32:7: ( INT | CHAR | FLOAT | DOUBLE )
            int alt1=4;
            switch ( input.LA(1) ) {
            case 'i':
                {
                alt1=1;
                }
                break;
            case 'c':
                {
                alt1=2;
                }
                break;
            case 'f':
                {
                alt1=3;
                }
                break;
            case 'd':
                {
                alt1=4;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 1, 0, input);

                throw nvae;

            }

            switch (alt1) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:32:8: INT
                    {
                    mINT(); 


                    }
                    break;
                case 2 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:32:14: CHAR
                    {
                    mCHAR(); 


                    }
                    break;
                case 3 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:32:21: FLOAT
                    {
                    mFLOAT(); 


                    }
                    break;
                case 4 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:32:29: DOUBLE
                    {
                    mDOUBLE(); 


                    }
                    break;

            }


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "TIPO"

    // $ANTLR start "ALLAVE"
    public final void mALLAVE() throws RecognitionException {
        try {
            int _type = ALLAVE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:33:7: ( '{' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:33:9: '{'
            {
            match('{'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ALLAVE"

    // $ANTLR start "CLLAVE"
    public final void mCLLAVE() throws RecognitionException {
        try {
            int _type = CLLAVE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:34:7: ( '}' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:34:9: '}'
            {
            match('}'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CLLAVE"

    // $ANTLR start "APARENTESIS"
    public final void mAPARENTESIS() throws RecognitionException {
        try {
            int _type = APARENTESIS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:35:12: ( '(' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:35:14: '('
            {
            match('('); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "APARENTESIS"

    // $ANTLR start "CPARENTESIS"
    public final void mCPARENTESIS() throws RecognitionException {
        try {
            int _type = CPARENTESIS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:36:12: ( ')' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:36:14: ')'
            {
            match(')'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CPARENTESIS"

    // $ANTLR start "ACORCHETE"
    public final void mACORCHETE() throws RecognitionException {
        try {
            int _type = ACORCHETE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:37:10: ( '[' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:37:12: '['
            {
            match('['); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ACORCHETE"

    // $ANTLR start "CCORCHETE"
    public final void mCCORCHETE() throws RecognitionException {
        try {
            int _type = CCORCHETE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:38:10: ( ']' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:38:12: ']'
            {
            match(']'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CCORCHETE"

    // $ANTLR start "MAYOR"
    public final void mMAYOR() throws RecognitionException {
        try {
            int _type = MAYOR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:39:6: ( '>' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:39:8: '>'
            {
            match('>'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MAYOR"

    // $ANTLR start "MENOR"
    public final void mMENOR() throws RecognitionException {
        try {
            int _type = MENOR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:40:6: ( '<' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:40:8: '<'
            {
            match('<'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MENOR"

    // $ANTLR start "IGUAL"
    public final void mIGUAL() throws RecognitionException {
        try {
            int _type = IGUAL;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:41:6: ( ( '=' ) )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:41:8: ( '=' )
            {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:41:8: ( '=' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:41:9: '='
            {
            match('='); 

            }


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "IGUAL"

    // $ANTLR start "MAS"
    public final void mMAS() throws RecognitionException {
        try {
            int _type = MAS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:42:4: ( '+' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:42:6: '+'
            {
            match('+'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MAS"

    // $ANTLR start "MENOS"
    public final void mMENOS() throws RecognitionException {
        try {
            int _type = MENOS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:43:6: ( '-' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:43:8: '-'
            {
            match('-'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MENOS"

    // $ANTLR start "ASTERISCO"
    public final void mASTERISCO() throws RecognitionException {
        try {
            int _type = ASTERISCO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:44:10: ( '*' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:44:12: '*'
            {
            match('*'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ASTERISCO"

    // $ANTLR start "AND"
    public final void mAND() throws RecognitionException {
        try {
            int _type = AND;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:45:4: ( '&&' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:45:6: '&&'
            {
            match("&&"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "AND"

    // $ANTLR start "ORYACC"
    public final void mORYACC() throws RecognitionException {
        try {
            int _type = ORYACC;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:46:7: ( '|' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:46:9: '|'
            {
            match('|'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ORYACC"

    // $ANTLR start "OR"
    public final void mOR() throws RecognitionException {
        try {
            int _type = OR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:47:3: ( '||' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:47:5: '||'
            {
            match("||"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "OR"

    // $ANTLR start "NOT"
    public final void mNOT() throws RecognitionException {
        try {
            int _type = NOT;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:48:4: ( '!' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:48:6: '!'
            {
            match('!'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "NOT"

    // $ANTLR start "INTERROGANTE"
    public final void mINTERROGANTE() throws RecognitionException {
        try {
            int _type = INTERROGANTE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:49:13: ( '?' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:49:15: '?'
            {
            match('?'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "INTERROGANTE"

    // $ANTLR start "DOSPUNTOS"
    public final void mDOSPUNTOS() throws RecognitionException {
        try {
            int _type = DOSPUNTOS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:50:10: ( ':' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:50:12: ':'
            {
            match(':'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DOSPUNTOS"

    // $ANTLR start "BARRA"
    public final void mBARRA() throws RecognitionException {
        try {
            int _type = BARRA;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:51:6: ( '/' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:51:8: '/'
            {
            match('/'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "BARRA"

    // $ANTLR start "SEPARADOR"
    public final void mSEPARADOR() throws RecognitionException {
        try {
            int _type = SEPARADOR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:52:10: ( ';' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:52:12: ';'
            {
            match(';'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "SEPARADOR"

    // $ANTLR start "COMA"
    public final void mCOMA() throws RecognitionException {
        try {
            int _type = COMA;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:53:5: ( ',' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:53:7: ','
            {
            match(','); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "COMA"

    // $ANTLR start "PUNTO"
    public final void mPUNTO() throws RecognitionException {
        try {
            int _type = PUNTO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:54:6: ( '.' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:54:8: '.'
            {
            match('.'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "PUNTO"

    // $ANTLR start "ALMOHADILLA"
    public final void mALMOHADILLA() throws RecognitionException {
        try {
            int _type = ALMOHADILLA;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:55:12: ( ' #' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:55:14: ' #'
            {
            match(" #"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ALMOHADILLA"

    // $ANTLR start "PORCENTAJE"
    public final void mPORCENTAJE() throws RecognitionException {
        try {
            int _type = PORCENTAJE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:56:11: ( '%' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:56:13: '%'
            {
            match('%'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "PORCENTAJE"

    // $ANTLR start "INIDEFINICIONES"
    public final void mINIDEFINICIONES() throws RecognitionException {
        try {
            int _type = INIDEFINICIONES;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:57:16: ( '%{' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:57:18: '%{'
            {
            match("%{"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "INIDEFINICIONES"

    // $ANTLR start "FINDEFINICIONES"
    public final void mFINDEFINICIONES() throws RecognitionException {
        try {
            int _type = FINDEFINICIONES;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:58:16: ( '%}' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:58:18: '%}'
            {
            match("%}"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "FINDEFINICIONES"

    // $ANTLR start "ZONAREGLA"
    public final void mZONAREGLA() throws RecognitionException {
        try {
            int _type = ZONAREGLA;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:59:10: ( '%%' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:59:12: '%%'
            {
            match("%%"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ZONAREGLA"

    // $ANTLR start "LETRA"
    public final void mLETRA() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:61:16: ( ( 'a' .. 'z' ) | ( 'A' .. 'Z' ) | '_' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:
            {
            if ( (input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
                input.consume();
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                recover(mse);
                throw mse;
            }


            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "LETRA"

    // $ANTLR start "IDENT"
    public final void mIDENT() throws RecognitionException {
        try {
            int _type = IDENT;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:62:8: ( LETRA ( DIGITO | LETRA )* )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:62:10: LETRA ( DIGITO | LETRA )*
            {
            mLETRA(); 


            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:62:16: ( DIGITO | LETRA )*
            loop2:
            do {
                int alt2=2;
                int LA2_0 = input.LA(1);

                if ( ((LA2_0 >= '0' && LA2_0 <= '9')||(LA2_0 >= 'A' && LA2_0 <= 'Z')||LA2_0=='_'||(LA2_0 >= 'a' && LA2_0 <= 'z')) ) {
                    alt2=1;
                }


                switch (alt2) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:
            	    {
            	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    break loop2;
                }
            } while (true);


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "IDENT"

    // $ANTLR start "DIGITO"
    public final void mDIGITO() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:63:17: ( '0' .. '9' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:
            {
            if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
                input.consume();
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                recover(mse);
                throw mse;
            }


            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DIGITO"

    // $ANTLR start "NUMERO"
    public final void mNUMERO() throws RecognitionException {
        try {
            int _type = NUMERO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:64:10: ( ( MENOS )? ( DIGITO )+ ( PUNTO ( DIGITO )* )? )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:64:12: ( MENOS )? ( DIGITO )+ ( PUNTO ( DIGITO )* )?
            {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:64:12: ( MENOS )?
            int alt3=2;
            int LA3_0 = input.LA(1);

            if ( (LA3_0=='-') ) {
                alt3=1;
            }
            switch (alt3) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:
                    {
                    if ( input.LA(1)=='-' ) {
                        input.consume();
                    }
                    else {
                        MismatchedSetException mse = new MismatchedSetException(null,input);
                        recover(mse);
                        throw mse;
                    }


                    }
                    break;

            }


            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:64:19: ( DIGITO )+
            int cnt4=0;
            loop4:
            do {
                int alt4=2;
                int LA4_0 = input.LA(1);

                if ( ((LA4_0 >= '0' && LA4_0 <= '9')) ) {
                    alt4=1;
                }


                switch (alt4) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:
            	    {
            	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    if ( cnt4 >= 1 ) break loop4;
                        EarlyExitException eee =
                            new EarlyExitException(4, input);
                        throw eee;
                }
                cnt4++;
            } while (true);


            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:64:29: ( PUNTO ( DIGITO )* )?
            int alt6=2;
            int LA6_0 = input.LA(1);

            if ( (LA6_0=='.') ) {
                alt6=1;
            }
            switch (alt6) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:64:30: PUNTO ( DIGITO )*
                    {
                    mPUNTO(); 


                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:64:36: ( DIGITO )*
                    loop5:
                    do {
                        int alt5=2;
                        int LA5_0 = input.LA(1);

                        if ( ((LA5_0 >= '0' && LA5_0 <= '9')) ) {
                            alt5=1;
                        }


                        switch (alt5) {
                    	case 1 :
                    	    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:
                    	    {
                    	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
                    	        input.consume();
                    	    }
                    	    else {
                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
                    	        recover(mse);
                    	        throw mse;
                    	    }


                    	    }
                    	    break;

                    	default :
                    	    break loop5;
                        }
                    } while (true);


                    }
                    break;

            }


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "NUMERO"

    // $ANTLR start "DOLAR"
    public final void mDOLAR() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:66:15: ( '$' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:66:17: '$'
            {
            match('$'); 

            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DOLAR"

    // $ANTLR start "VAR"
    public final void mVAR() throws RecognitionException {
        try {
            int _type = VAR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:67:5: ( DOLAR DIGITO )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:67:7: DOLAR DIGITO
            {
            mDOLAR(); 


            mDIGITO(); 


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "VAR"

    // $ANTLR start "DOLARDOLAR"
    public final void mDOLARDOLAR() throws RecognitionException {
        try {
            int _type = DOLARDOLAR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:68:11: ( DOLAR DOLAR )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:68:13: DOLAR DOLAR
            {
            mDOLAR(); 


            mDOLAR(); 


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DOLARDOLAR"

    // $ANTLR start "COMILLAS"
    public final void mCOMILLAS() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:69:18: ( '\"' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:69:20: '\"'
            {
            match('\"'); 

            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "COMILLAS"

    // $ANTLR start "CADENA"
    public final void mCADENA() throws RecognitionException {
        try {
            int _type = CADENA;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:70:7: ( COMILLAS (~ ( COMILLAS ) )* COMILLAS )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:70:9: COMILLAS (~ ( COMILLAS ) )* COMILLAS
            {
            mCOMILLAS(); 


            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:70:18: (~ ( COMILLAS ) )*
            loop7:
            do {
                int alt7=2;
                int LA7_0 = input.LA(1);

                if ( ((LA7_0 >= '\u0000' && LA7_0 <= '!')||(LA7_0 >= '#' && LA7_0 <= '\uFFFF')) ) {
                    alt7=1;
                }


                switch (alt7) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:
            	    {
            	    if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '!')||(input.LA(1) >= '#' && input.LA(1) <= '\uFFFF') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    break loop7;
                }
            } while (true);


            mCOMILLAS(); 


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CADENA"

    // $ANTLR start "COMILLA"
    public final void mCOMILLA() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:72:17: ( '\\'' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:72:19: '\\''
            {
            match('\''); 

            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "COMILLA"

    // $ANTLR start "CARACTER"
    public final void mCARACTER() throws RecognitionException {
        try {
            int _type = CARACTER;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:73:9: ( COMILLA ( . )* COMILLA )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:73:11: COMILLA ( . )* COMILLA
            {
            mCOMILLA(); 


            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:73:19: ( . )*
            loop8:
            do {
                int alt8=2;
                int LA8_0 = input.LA(1);

                if ( (LA8_0=='\'') ) {
                    alt8=2;
                }
                else if ( ((LA8_0 >= '\u0000' && LA8_0 <= '&')||(LA8_0 >= '(' && LA8_0 <= '\uFFFF')) ) {
                    alt8=1;
                }


                switch (alt8) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:73:20: .
            	    {
            	    matchAny(); 

            	    }
            	    break;

            	default :
            	    break loop8;
                }
            } while (true);


            mCOMILLA(); 


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CARACTER"

    // $ANTLR start "ESPACIO"
    public final void mESPACIO() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:75:17: ( ( ' ' ) )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:75:19: ( ' ' )
            {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:75:19: ( ' ' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:75:20: ' '
            {
            match(' '); 

            }


            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ESPACIO"

    // $ANTLR start "NUEVA_LINEA"
    public final void mNUEVA_LINEA() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:76:23: ( ( '\\r\\n' | '\\n' ) )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:76:25: ( '\\r\\n' | '\\n' )
            {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:76:25: ( '\\r\\n' | '\\n' )
            int alt9=2;
            int LA9_0 = input.LA(1);

            if ( (LA9_0=='\r') ) {
                alt9=1;
            }
            else if ( (LA9_0=='\n') ) {
                alt9=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 9, 0, input);

                throw nvae;

            }
            switch (alt9) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:76:26: '\\r\\n'
                    {
                    match("\r\n"); 



                    }
                    break;
                case 2 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:76:33: '\\n'
                    {
                    match('\n'); 

                    }
                    break;

            }


            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "NUEVA_LINEA"

    // $ANTLR start "BLANCO"
    public final void mBLANCO() throws RecognitionException {
        try {
            int _type = BLANCO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:77:11: ( ( ESPACIO | '\\t' | '\\r' | NUEVA_LINEA ) )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:77:13: ( ESPACIO | '\\t' | '\\r' | NUEVA_LINEA )
            {
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:77:13: ( ESPACIO | '\\t' | '\\r' | NUEVA_LINEA )
            int alt10=4;
            switch ( input.LA(1) ) {
            case ' ':
                {
                alt10=1;
                }
                break;
            case '\t':
                {
                alt10=2;
                }
                break;
            case '\r':
                {
                int LA10_3 = input.LA(2);

                if ( (LA10_3=='\n') ) {
                    alt10=4;
                }
                else {
                    alt10=3;
                }
                }
                break;
            case '\n':
                {
                alt10=4;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 10, 0, input);

                throw nvae;

            }

            switch (alt10) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:77:14: ESPACIO
                    {
                    mESPACIO(); 


                    }
                    break;
                case 2 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:77:22: '\\t'
                    {
                    match('\t'); 

                    }
                    break;
                case 3 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:77:27: '\\r'
                    {
                    match('\r'); 

                    }
                    break;
                case 4 :
                    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:77:32: NUEVA_LINEA
                    {
                    mNUEVA_LINEA(); 


                    }
                    break;

            }


            _channel = HIDDEN;

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "BLANCO"

    // $ANTLR start "COMENTARIO"
    public final void mCOMENTARIO() throws RecognitionException {
        try {
            int _type = COMENTARIO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:78:13: ( '/*' ( options {greedy=false; } : . )* '*/' )
            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:78:15: '/*' ( options {greedy=false; } : . )* '*/'
            {
            match("/*"); 



            // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:78:20: ( options {greedy=false; } : . )*
            loop11:
            do {
                int alt11=2;
                int LA11_0 = input.LA(1);

                if ( (LA11_0=='*') ) {
                    int LA11_1 = input.LA(2);

                    if ( (LA11_1=='/') ) {
                        alt11=2;
                    }
                    else if ( ((LA11_1 >= '\u0000' && LA11_1 <= '.')||(LA11_1 >= '0' && LA11_1 <= '\uFFFF')) ) {
                        alt11=1;
                    }


                }
                else if ( ((LA11_0 >= '\u0000' && LA11_0 <= ')')||(LA11_0 >= '+' && LA11_0 <= '\uFFFF')) ) {
                    alt11=1;
                }


                switch (alt11) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:78:45: .
            	    {
            	    matchAny(); 

            	    }
            	    break;

            	default :
            	    break loop11;
                }
            } while (true);


            match("*/"); 



            _channel = HIDDEN;

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "COMENTARIO"

    public void mTokens() throws RecognitionException {
        // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:8: ( WHILE | IF | ELSE | VOID | BREAK | FOR | MAIN | DEFINE | INCLUDE | EXTERN | TYPEDEF | STRUCT | RETURN | TIPO | ALLAVE | CLLAVE | APARENTESIS | CPARENTESIS | ACORCHETE | CCORCHETE | MAYOR | MENOR | IGUAL | MAS | MENOS | ASTERISCO | AND | ORYACC | OR | NOT | INTERROGANTE | DOSPUNTOS | BARRA | SEPARADOR | COMA | PUNTO | ALMOHADILLA | PORCENTAJE | INIDEFINICIONES | FINDEFINICIONES | ZONAREGLA | IDENT | NUMERO | VAR | DOLARDOLAR | CADENA | CARACTER | BLANCO | COMENTARIO )
        int alt12=49;
        alt12 = dfa12.predict(input);
        switch (alt12) {
            case 1 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:10: WHILE
                {
                mWHILE(); 


                }
                break;
            case 2 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:16: IF
                {
                mIF(); 


                }
                break;
            case 3 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:19: ELSE
                {
                mELSE(); 


                }
                break;
            case 4 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:24: VOID
                {
                mVOID(); 


                }
                break;
            case 5 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:29: BREAK
                {
                mBREAK(); 


                }
                break;
            case 6 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:35: FOR
                {
                mFOR(); 


                }
                break;
            case 7 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:39: MAIN
                {
                mMAIN(); 


                }
                break;
            case 8 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:44: DEFINE
                {
                mDEFINE(); 


                }
                break;
            case 9 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:51: INCLUDE
                {
                mINCLUDE(); 


                }
                break;
            case 10 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:59: EXTERN
                {
                mEXTERN(); 


                }
                break;
            case 11 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:66: TYPEDEF
                {
                mTYPEDEF(); 


                }
                break;
            case 12 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:74: STRUCT
                {
                mSTRUCT(); 


                }
                break;
            case 13 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:81: RETURN
                {
                mRETURN(); 


                }
                break;
            case 14 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:88: TIPO
                {
                mTIPO(); 


                }
                break;
            case 15 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:93: ALLAVE
                {
                mALLAVE(); 


                }
                break;
            case 16 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:100: CLLAVE
                {
                mCLLAVE(); 


                }
                break;
            case 17 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:107: APARENTESIS
                {
                mAPARENTESIS(); 


                }
                break;
            case 18 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:119: CPARENTESIS
                {
                mCPARENTESIS(); 


                }
                break;
            case 19 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:131: ACORCHETE
                {
                mACORCHETE(); 


                }
                break;
            case 20 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:141: CCORCHETE
                {
                mCCORCHETE(); 


                }
                break;
            case 21 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:151: MAYOR
                {
                mMAYOR(); 


                }
                break;
            case 22 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:157: MENOR
                {
                mMENOR(); 


                }
                break;
            case 23 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:163: IGUAL
                {
                mIGUAL(); 


                }
                break;
            case 24 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:169: MAS
                {
                mMAS(); 


                }
                break;
            case 25 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:173: MENOS
                {
                mMENOS(); 


                }
                break;
            case 26 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:179: ASTERISCO
                {
                mASTERISCO(); 


                }
                break;
            case 27 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:189: AND
                {
                mAND(); 


                }
                break;
            case 28 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:193: ORYACC
                {
                mORYACC(); 


                }
                break;
            case 29 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:200: OR
                {
                mOR(); 


                }
                break;
            case 30 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:203: NOT
                {
                mNOT(); 


                }
                break;
            case 31 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:207: INTERROGANTE
                {
                mINTERROGANTE(); 


                }
                break;
            case 32 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:220: DOSPUNTOS
                {
                mDOSPUNTOS(); 


                }
                break;
            case 33 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:230: BARRA
                {
                mBARRA(); 


                }
                break;
            case 34 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:236: SEPARADOR
                {
                mSEPARADOR(); 


                }
                break;
            case 35 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:246: COMA
                {
                mCOMA(); 


                }
                break;
            case 36 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:251: PUNTO
                {
                mPUNTO(); 


                }
                break;
            case 37 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:257: ALMOHADILLA
                {
                mALMOHADILLA(); 


                }
                break;
            case 38 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:269: PORCENTAJE
                {
                mPORCENTAJE(); 


                }
                break;
            case 39 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:280: INIDEFINICIONES
                {
                mINIDEFINICIONES(); 


                }
                break;
            case 40 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:296: FINDEFINICIONES
                {
                mFINDEFINICIONES(); 


                }
                break;
            case 41 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:312: ZONAREGLA
                {
                mZONAREGLA(); 


                }
                break;
            case 42 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:322: IDENT
                {
                mIDENT(); 


                }
                break;
            case 43 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:328: NUMERO
                {
                mNUMERO(); 


                }
                break;
            case 44 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:335: VAR
                {
                mVAR(); 


                }
                break;
            case 45 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:339: DOLARDOLAR
                {
                mDOLARDOLAR(); 


                }
                break;
            case 46 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:350: CADENA
                {
                mCADENA(); 


                }
                break;
            case 47 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:357: CARACTER
                {
                mCARACTER(); 


                }
                break;
            case 48 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:366: BLANCO
                {
                mBLANCO(); 


                }
                break;
            case 49 :
                // C:\\Users\\Jose\\workspace\\prac7\\src\\main\\java\\PL\\prac7\\YACCLexer.g:1:373: COMENTARIO
                {
                mCOMENTARIO(); 


                }
                break;

        }

    }


    protected DFA12 dfa12 = new DFA12(this);
    static final String DFA12_eotS =
        "\1\uffff\14\44\12\uffff\1\72\2\uffff\1\74\3\uffff\1\76\3\uffff\1"+
        "\51\1\103\6\uffff\1\44\1\107\16\44\14\uffff\1\44\1\uffff\1\44\1"+
        "\131\4\44\1\136\12\44\1\uffff\1\151\1\44\1\153\1\44\1\uffff\1\44"+
        "\1\156\5\44\1\131\1\164\1\44\1\uffff\1\44\1\uffff\1\167\1\131\1"+
        "\uffff\5\44\1\uffff\1\44\1\176\1\uffff\1\177\1\131\1\44\1\u0081"+
        "\1\u0082\1\u0083\2\uffff\1\u0084\4\uffff";
    static final String DFA12_eofS =
        "\u0085\uffff";
    static final String DFA12_minS =
        "\1\11\1\150\1\146\1\154\1\157\1\162\1\154\1\141\1\145\1\171\1\164"+
        "\1\145\1\150\12\uffff\1\60\2\uffff\1\174\3\uffff\1\52\3\uffff\1"+
        "\43\1\45\2\uffff\1\44\3\uffff\1\151\1\60\1\143\1\163\1\164\1\151"+
        "\1\145\1\162\1\157\1\151\1\146\1\165\1\160\1\162\1\164\1\141\14"+
        "\uffff\1\154\1\uffff\1\154\1\60\2\145\1\144\1\141\1\60\1\141\1\156"+
        "\1\151\1\142\1\145\2\165\1\162\1\145\1\165\1\uffff\1\60\1\162\1"+
        "\60\1\153\1\uffff\1\164\1\60\1\156\1\154\1\144\1\143\1\162\2\60"+
        "\1\144\1\uffff\1\156\1\uffff\2\60\1\uffff\3\145\1\164\1\156\1\uffff"+
        "\1\145\1\60\1\uffff\2\60\1\146\3\60\2\uffff\1\60\4\uffff";
    static final String DFA12_maxS =
        "\1\175\1\150\1\156\1\170\1\157\1\162\1\157\1\141\1\157\1\171\1\164"+
        "\1\145\1\150\12\uffff\1\71\2\uffff\1\174\3\uffff\1\52\3\uffff\1"+
        "\43\1\175\2\uffff\1\71\3\uffff\1\151\1\172\1\164\1\163\1\164\1\151"+
        "\1\145\1\162\1\157\1\151\1\146\1\165\1\160\1\162\1\164\1\141\14"+
        "\uffff\1\154\1\uffff\1\154\1\172\2\145\1\144\1\141\1\172\1\141\1"+
        "\156\1\151\1\142\1\145\2\165\1\162\1\145\1\165\1\uffff\1\172\1\162"+
        "\1\172\1\153\1\uffff\1\164\1\172\1\156\1\154\1\144\1\143\1\162\2"+
        "\172\1\144\1\uffff\1\156\1\uffff\2\172\1\uffff\3\145\1\164\1\156"+
        "\1\uffff\1\145\1\172\1\uffff\2\172\1\146\3\172\2\uffff\1\172\4\uffff";
    static final String DFA12_acceptS =
        "\15\uffff\1\17\1\20\1\21\1\22\1\23\1\24\1\25\1\26\1\27\1\30\1\uffff"+
        "\1\32\1\33\1\uffff\1\36\1\37\1\40\1\uffff\1\42\1\43\1\44\2\uffff"+
        "\1\52\1\53\1\uffff\1\56\1\57\1\60\20\uffff\1\31\1\35\1\34\1\61\1"+
        "\41\1\45\1\47\1\50\1\51\1\46\1\54\1\55\1\uffff\1\2\21\uffff\1\16"+
        "\4\uffff\1\6\12\uffff\1\3\1\uffff\1\4\2\uffff\1\7\5\uffff\1\1\2"+
        "\uffff\1\5\6\uffff\1\12\1\10\1\uffff\1\14\1\15\1\11\1\13";
    static final String DFA12_specialS =
        "\u0085\uffff}>";
    static final String[] DFA12_transitionS = {
            "\2\51\2\uffff\1\51\22\uffff\1\42\1\33\1\47\1\uffff\1\46\1\43"+
            "\1\31\1\50\1\17\1\20\1\30\1\26\1\40\1\27\1\41\1\36\12\45\1\35"+
            "\1\37\1\24\1\25\1\23\1\34\1\uffff\32\44\1\21\1\uffff\1\22\1"+
            "\uffff\1\44\1\uffff\1\44\1\5\1\14\1\10\1\3\1\6\2\44\1\2\3\44"+
            "\1\7\4\44\1\13\1\12\1\11\1\44\1\4\1\1\3\44\1\15\1\32\1\16",
            "\1\52",
            "\1\53\7\uffff\1\54",
            "\1\55\13\uffff\1\56",
            "\1\57",
            "\1\60",
            "\1\62\2\uffff\1\61",
            "\1\63",
            "\1\64\11\uffff\1\65",
            "\1\66",
            "\1\67",
            "\1\70",
            "\1\71",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "\12\45",
            "",
            "",
            "\1\73",
            "",
            "",
            "",
            "\1\75",
            "",
            "",
            "",
            "\1\77",
            "\1\102\125\uffff\1\100\1\uffff\1\101",
            "",
            "",
            "\1\105\13\uffff\12\104",
            "",
            "",
            "",
            "\1\106",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\110\20\uffff\1\111",
            "\1\112",
            "\1\113",
            "\1\114",
            "\1\115",
            "\1\116",
            "\1\117",
            "\1\120",
            "\1\121",
            "\1\122",
            "\1\123",
            "\1\124",
            "\1\125",
            "\1\126",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "\1\127",
            "",
            "\1\130",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\132",
            "\1\133",
            "\1\134",
            "\1\135",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\137",
            "\1\140",
            "\1\141",
            "\1\142",
            "\1\143",
            "\1\144",
            "\1\145",
            "\1\146",
            "\1\147",
            "\1\150",
            "",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\152",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\154",
            "",
            "\1\155",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\157",
            "\1\160",
            "\1\161",
            "\1\162",
            "\1\163",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\165",
            "",
            "\1\166",
            "",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "",
            "\1\170",
            "\1\171",
            "\1\172",
            "\1\173",
            "\1\174",
            "",
            "\1\175",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\1\u0080",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "",
            "",
            "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
            "",
            "",
            "",
            ""
    };

    static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
    static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
    static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
    static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
    static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
    static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
    static final short[][] DFA12_transition;

    static {
        int numStates = DFA12_transitionS.length;
        DFA12_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
        }
    }

    class DFA12 extends DFA {

        public DFA12(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 12;
            this.eot = DFA12_eot;
            this.eof = DFA12_eof;
            this.min = DFA12_min;
            this.max = DFA12_max;
            this.accept = DFA12_accept;
            this.special = DFA12_special;
            this.transition = DFA12_transition;
        }
        public String getDescription() {
            return "1:1: Tokens : ( WHILE | IF | ELSE | VOID | BREAK | FOR | MAIN | DEFINE | INCLUDE | EXTERN | TYPEDEF | STRUCT | RETURN | TIPO | ALLAVE | CLLAVE | APARENTESIS | CPARENTESIS | ACORCHETE | CCORCHETE | MAYOR | MENOR | IGUAL | MAS | MENOS | ASTERISCO | AND | ORYACC | OR | NOT | INTERROGANTE | DOSPUNTOS | BARRA | SEPARADOR | COMA | PUNTO | ALMOHADILLA | PORCENTAJE | INIDEFINICIONES | FINDEFINICIONES | ZONAREGLA | IDENT | NUMERO | VAR | DOLARDOLAR | CADENA | CARACTER | BLANCO | COMENTARIO );";
        }
    }
 

}